// components/footer/footer.js
const footer_be = require('../../behaviors/footer_be')
Component({
    behaviors:[footer_be],
    /**
     * 组件的属性列表
     */
    properties: {

    },

    /**
     * 组件的初始数据
     */
    data: {
        count:1314,
        num:0,
        obj:{
            name:'hanhan'
        }
    },

    /**
     * 组件的方法列表
     */
    methods: {
        handlerHanhanWelcome(){
            console.log(11);
            // 触发父元素传递过来的函数
            // handlerHanhanWelcome
            this.triggerEvent('hanhanwelcome');
        },
        changeNum(){
            this.setData({
                num:50
            })
        },
        changeObj(){
            this.setData({
                'obj.name':'lele'
            })
        }
    },
    // 类似于vue watch
    observers:{
        "num":function(value1){
            // 新值
            console.log(value1);
            
            console.log('num更改')
        },
        "obj.name":function(){
            console.log('obj.name更改')
        }
    },
    // 小程序自定义组件的生命周期钩子
    lifetimes:{
        // 自定义组件被创建时执行
        created(){
            console.log('footer created');
            // 在created当中能访问到data当中
            // 能否改变data当中的数据
            // this.setData
            console.log(this.data.count);
            console.log(this.setData);
            // 在created当中不能改变data中的值
            
        },
        // 组件实例进入页面时执行，此时之后都能使用setData(就可以更改data中的数据了)
        attached(){
            console.log('footer attached');
            this.setData({
                count:520
            })
        },
        // 组件实例布局完成之后执行
        ready(){
            console.log('footer ready')
        },
        // 组件从一个节点树的位置移动到另一位置时触发
        moved(){
            console.log('footer moved')
        },
        // 自定义的组件从页面当中移除时执行
        detached(){
            console.log('footer detached')
        }
    }
})
